当前位置: > 其它学习 > Spring Boot >

spring boot 打成jar包部署到Centos,从环境配置到开机启动服务

时间:2019-02-20 11:50来源:未知 作者:IT
一、java环境配置:

1、因为Centos默认安装有openjdk ,我们要首先卸载openjdk,安装sun JDK:

rpm -qa|grep java   (列出默认安装的openJDK)

rpm -e --nodeps  java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64   (全部删除掉上面列出的openJDK)


2、安装sun JDK ,这里我是采用安装rpm包的方式,安装包可以到官网上下载。


Oracle JDK下载地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

rpm -ivh jdk-8u111-linux-x64.rpm


3、配置环境变量,默认应该是安装在/usr/java 目录:

vi /etc/profile      (编辑profile文件)
在末尾处添加java环境变量:

#set java environment
JAVA_HOME=/usr/java/jdk1.8.0_111
JRE_HOME=/usr/java/jdk1.8.0_111/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
保存退出,然后验证是否生效:

source /etc/profile       (使配置生效)

echo $PATH                 (看是否有java相关配置路径输出,如果有证明配置生效)

java -version               (正常显示 sun jdk 版本)
 

二、spring  boot工程maven  pom.xml配置:

其实spring boot 打成jar包以后,是可以直接像shell脚本一样直接运行的,要实现这样可以直接运行,pom.xml 的build节点需要增加这样的配置:

            <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
     <executable>true</executable>
    </configuration>
   </plugin>
这样配置后,通过maven打出来的jar 可以直接 执行  ./aabb.jar  就能运行起来。

chmod 777  aabb.jar     (赋个权限)

./aabb.jar               (可以直接运行起来)
 

三、配置防火墙策略:

需要配置一下防火墙策略,开放端口,才可以供其他机器访问你的应用,Centos 6 和 Centos7配置不同:

1、Centos 6 配置的是iptables :

    ①首先要关闭 selinux 

vi /etc/selinux/config      (修改 SETLINUX=enforcing  为 SETLINUX=disabled)
②添加你的应用端口

service iptables status           (查看防火墙已经开放的端口)

iptables -I INPUT -p tcp --dport 8899 -j ACCEPT      (配置开放8899端口)

service iptables save              (保存配置)

service iptables restart            (重启iptables)

service iptables status              (在看一下端口状态,此时应该看到8899端口已经在列表中)
 

2、Centos 7 默认使用的是firewall 防火墙:

    ①查看防火墙状态,是否是running

firewall-cmd --state    (查看防火墙状态 是否running)

systemctl start firewalld.service    (开启firewalld)

firewall-cmd --zone=public --add-port=8899/tcp --permanent        (配置开放8899端口)

firewall-cmd --reload     (重新加载配置)

iptables -L -n             (查看端口状态,此时8899端口应该在列表中了)

 

四、配置spring boot 的jar应用成为开机自启动服务:

1、添加服务链接

sudo ln -s /home/user/aabb.jar /etc/init.d/aabb    (aabb是你的服务名,这里要注意的是要写上jar包的完整路径,否则添加服务链接失败)


2、手动启动一下服务验证是否能成功

service aabb start           (启动服务)

ss -lntup|grep 8899           (查看一下应用端口是否已经监听)


3、添加服务开机自启

chkconfig --add aabb


4、查看一下是否添加成功

chkconfig --list         (此时aabb服务应该已经在列表中)

service aabb stop         (手动停止服务)

reboot                     (重启服务器)
重启服务器后,在查看一下应用端口,或者使用  jps命令, 如果看到你的应用名字,说明配置的

spring boot应用开机自启成功 , 应用输出控制台日志在   /var/log/aabb.log  文件中。




(责任编辑:IT)
------分隔线----------------------------